home *** CD-ROM | disk | FTP | other *** search
/ The CICA Windows Explosion! / The CICA Windows Explosion! - Disc 2.iso / demo / flowdemo.zip / MSDETECT.IN_ / MSDETECT.IN
Text File  |  1994-06-20  |  16KB  |  427 lines

  1. '**************************************************************************
  2. '*************************  Setup Detect API's  ***************************
  3. '**************************************************************************
  4.  
  5. ''detect
  6.  
  7. DECLARE FUNCTION CbGetVersionOfFile LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
  8. DECLARE FUNCTION LGetVersionNthField LIB "msdetstf.dll" (szVersion$, nField%) AS LONG
  9. DECLARE FUNCTION LcbGetSizeOfFile LIB "msdetstf.dll" (szFile$) AS LONG
  10. DECLARE FUNCTION FGetValidDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  11. DECLARE FUNCTION FGetLocalHardDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  12. DECLARE FUNCTION FGetRemovableDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  13. DECLARE FUNCTION FGetNetworkDrivesList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  14. DECLARE FUNCTION LcbTotalDrive LIB "msdetstf.dll" (nDrive%) AS LONG
  15. DECLARE FUNCTION LcbFreeDrive LIB "msdetstf.dll" (nDrive%) AS LONG
  16. DECLARE FUNCTION FIsValidDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
  17. DECLARE FUNCTION FIsLocalHardDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
  18. DECLARE FUNCTION FIsRemoveDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
  19. DECLARE FUNCTION FIsRemoteDrive LIB "msdetstf.dll" (nDrive%) AS INTEGER
  20. DECLARE FUNCTION FDirExists LIB "msdetstf.dll" (szDir$) AS INTEGER
  21. DECLARE FUNCTION FDoesFileExist LIB "msdetstf.dll" (szFileName$, mode%) AS INTEGER
  22. DECLARE FUNCTION CbGetDateOfFile LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
  23. DECLARE FUNCTION FDoesIniSectionExist LIB "msdetstf.dll" (szFile$, szSect$) AS INTEGER
  24. DECLARE FUNCTION FDoesIniKeyExist LIB "msdetstf.dll" (szFile$, szSect$, szKey$) AS INTEGER
  25. DECLARE FUNCTION CbGetIniKeyString LIB "msdetstf.dll" (szFile$, szSect$, szKey$, szBuf$, cbBuf%) AS INTEGER
  26. DECLARE FUNCTION WGetDOSMajorVersion LIB "msdetstf.dll" AS INTEGER
  27. DECLARE FUNCTION WGetDOSMinorVersion LIB "msdetstf.dll" AS INTEGER
  28. ''DECLARE FUNCTION CbGetEnvVariableValue LIB "msdetstf.dll" (szEnvVar$, szBuf$, cbBuf%) AS INTEGER
  29. ''DECLARE FUNCTION WGetNumWinApps LIB "msdetstf.dll" AS INTEGER
  30. DECLARE FUNCTION FGetParallelPortsList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  31. DECLARE FUNCTION FGetSerialPortsList LIB "msdetstf.dll" (szSymbol$) AS INTEGER
  32. DECLARE FUNCTION FHas87MathChip LIB "msdetstf.dll" AS INTEGER
  33. DECLARE FUNCTION FHasMonochromeDisplay LIB "msdetstf.dll" AS INTEGER
  34. DECLARE FUNCTION FHasMouseInstalled LIB "msdetstf.dll" AS INTEGER
  35. DECLARE FUNCTION WGetConfigSmartdrvSize LIB "msdetstf.dll" AS INTEGER
  36. DECLARE FUNCTION WGetConfigRamdriveSize LIB "msdetstf.dll" AS INTEGER
  37. DECLARE FUNCTION WGetConfigNumBuffers LIB "msdetstf.dll" AS INTEGER
  38. DECLARE FUNCTION WGetConfigNumFiles LIB "msdetstf.dll" AS INTEGER
  39. DECLARE FUNCTION WGetConfigLastDrive LIB "msdetstf.dll" AS INTEGER
  40. DECLARE FUNCTION FIsDriverInConfig LIB "msdetstf.dll" (szDrv$) AS INTEGER
  41. DECLARE FUNCTION CbFindTargetOnEnvVar LIB "msdetstf.dll" (szFile$, szEnvVar$, szBuf$, cbBuf%) AS INTEGER
  42. DECLARE FUNCTION CbFindFileInTree LIB "msdetstf.dll" (szFile$, szDir$, szBuf$, cbBuf%) AS INTEGER
  43. DECLARE FUNCTION GetTypeFaceNameFromTTF LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
  44. DECLARE FUNCTION GetExistingFOTFileForTTF LIB "msdetstf.dll" (szFile$, szBuf$, cbBuf%) AS INTEGER
  45.  
  46.  
  47.  
  48. '*************************************************************************
  49. '****************  Detect Basic Wrapper Declarations  ********************
  50. '*************************************************************************
  51.  
  52.  
  53. '' detect
  54.  
  55. DECLARE FUNCTION IsDriveValid (szDrive$) AS INTEGER
  56. DECLARE FUNCTION IsDriveLocalHard (szDrive$) AS INTEGER
  57. DECLARE FUNCTION IsDriveRemovable (szDrive$) AS INTEGER
  58. DECLARE FUNCTION IsDriveNetwork (szDrive$) AS INTEGER
  59. DECLARE SUB GetValidDrivesList (szSymbol$)
  60. DECLARE SUB GetLocalHardDrivesList (szSymbol$)
  61. DECLARE SUB GetRemovableDrivesList (szSymbol$)
  62. DECLARE SUB GetNetworkDrivesList (szSymbol$)
  63. DECLARE FUNCTION GetTotalSpaceForDrive (szDrive$) AS LONG
  64. DECLARE FUNCTION GetFreeSpaceForDrive (szDrive$) AS LONG
  65.  
  66. DECLARE FUNCTION GetDOSMajorVersion AS INTEGER
  67. DECLARE FUNCTION GetDOSMinorVersion AS INTEGER
  68. ''DECLARE FUNCTION GetEnvVariableValue (szEnvVar$) AS STRING
  69. ''DECLARE FUNCTION GetNumWinApps AS INTEGER
  70.  
  71. DECLARE FUNCTION DoesFileExist (szFile$, mode%) AS INTEGER
  72. DECLARE FUNCTION GetDateOfFile (szFile$) AS STRING
  73. DECLARE FUNCTION GetYearFromDate (szDate$) AS INTEGER
  74. DECLARE FUNCTION GetMonthFromDate (szDate$) AS INTEGER
  75. DECLARE FUNCTION GetDayFromDate (szDate$) AS INTEGER
  76. DECLARE FUNCTION GetHourFromDate (szDate$) AS INTEGER
  77. DECLARE FUNCTION GetMinuteFromDate (szDate$) AS INTEGER
  78. DECLARE FUNCTION GetSecondFromDate (szDate$) AS INTEGER
  79. DECLARE FUNCTION GetVersionOfFile (szFile$) AS STRING
  80. DECLARE FUNCTION GetVersionNthField (szVersion$, nField%) AS LONG
  81. DECLARE FUNCTION GetSizeOfFile (szFile$) AS LONG
  82. DECLARE FUNCTION FindTargetOnEnvVar (szFile$, szEnvVar$) AS STRING
  83. DECLARE FUNCTION FindFileInTree (szFile$, szDir$) AS STRING
  84. DECLARE FUNCTION DoesDirExist (szDir$) AS INTEGER
  85.  
  86. DECLARE FUNCTION DoesIniSectionExist (szFile$, szSect$) AS INTEGER
  87. DECLARE FUNCTION DoesIniKeyExist (szFile$, szSect$, szKey$) AS INTEGER
  88. DECLARE FUNCTION GetIniKeyString (szFile$, szSect$, szKey$) AS STRING
  89.  
  90. DECLARE FUNCTION GetConfigSmartdrvSize AS INTEGER
  91. DECLARE FUNCTION GetConfigRamdriveSize AS INTEGER
  92. DECLARE FUNCTION GetConfigNumBuffers AS INTEGER
  93. DECLARE FUNCTION GetConfigNumFiles AS INTEGER
  94. DECLARE FUNCTION GetConfigLastDrive AS STRING
  95. DECLARE FUNCTION IsDriverInConfig (szDrv$) AS INTEGER
  96.  
  97. DECLARE FUNCTION GetProcessorType AS INTEGER
  98. DECLARE SUB GetParallelPortsList (szSymbol$)
  99. DECLARE SUB GetSerialPortsList (szSymbol$)
  100. DECLARE FUNCTION Has87MathChip AS INTEGER
  101. DECLARE FUNCTION HasMonochromeDisplay AS INTEGER
  102. DECLARE FUNCTION HasMouseInstalled AS INTEGER
  103.  
  104.  
  105. '*************************************************************************
  106. FUNCTION IsDriveValid (szDrive$) STATIC  AS INTEGER
  107.     IsDriveValid = FIsValidDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  108. END FUNCTION
  109.  
  110.  
  111. '*************************************************************************
  112. FUNCTION IsDriveLocalHard (szDrive$) STATIC  AS INTEGER
  113.     IsDriveLocalHard = FIsLocalHardDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  114. END FUNCTION
  115.  
  116.  
  117. '*************************************************************************
  118. FUNCTION IsDriveRemovable (szDrive$) STATIC  AS INTEGER
  119.     IsDriveRemovable = FIsRemoveDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  120. END FUNCTION
  121.  
  122.  
  123. '*************************************************************************
  124. FUNCTION IsDriveNetwork (szDrive$) STATIC  AS INTEGER
  125.     IsDriveNetwork = FIsRemoteDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  126. END FUNCTION
  127.  
  128.  
  129. '*************************************************************************
  130. FUNCTION GetTotalSpaceForDrive (szDrive$) STATIC  AS LONG
  131.     GetTotalSpaceForDrive = LcbTotalDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  132. END FUNCTION
  133.  
  134.  
  135. '*************************************************************************
  136. FUNCTION GetFreeSpaceForDrive (szDrive$) STATIC  AS LONG
  137.     GetFreeSpaceForDrive = LcbFreeDrive(ASC(UCASE$(szDrive$)) - ASC("A") + 1)
  138. END FUNCTION
  139.  
  140.  
  141. '*************************************************************************
  142. SUB GetValidDrivesList (szSymbol$) STATIC
  143.     if FGetValidDrivesList(szSymbol$) = 0 then
  144.         ERROR STFERR
  145.     end if
  146. END SUB
  147.  
  148.  
  149. '*************************************************************************
  150. SUB GetLocalHardDrivesList (szSymbol$) STATIC
  151.     if FGetLocalHardDrivesList(szSymbol$) = 0 then
  152.         ERROR STFERR
  153.     end if
  154. END SUB
  155.  
  156.  
  157. '*************************************************************************
  158. SUB GetRemovableDrivesList (szSymbol$) STATIC
  159.     if FGetRemovableDrivesList(szSymbol$) = 0 then
  160.         ERROR STFERR
  161.     end if
  162. END SUB
  163.  
  164.  
  165. '*************************************************************************
  166. SUB GetNetworkDrivesList (szSymbol$) STATIC
  167.     if FGetNetworkDrivesList(szSymbol$) = 0 then
  168.         ERROR STFERR
  169.     end if
  170. END SUB
  171.  
  172.  
  173. '*************************************************************************
  174. FUNCTION GetDOSMajorVersion STATIC  AS INTEGER
  175.     GetDOSMajorVersion = WGetDOSMajorVersion
  176. END FUNCTION
  177.  
  178.  
  179. '*************************************************************************
  180. FUNCTION GetDOSMinorVersion STATIC  AS INTEGER
  181.     GetDOSMinorVersion = WGetDOSMinorVersion
  182. END FUNCTION
  183.  
  184.  
  185. '$IFDEF SHIT
  186. '*************************************************************************
  187. FUNCTION GetEnvVariableValue (szEnvVar$) STATIC  AS STRING
  188.     cb% = 1024
  189.     szBuf$ = STRING$(cb%, 32)
  190.     cbRet% = CbGetEnvVariableValue(szEnvVar$, szBuf$, cb%)
  191.     GetEnvVariableValue = szBuf$
  192.     szBuf$ = ""
  193. END FUNCTION
  194. '$endif ''SHIT
  195.  
  196.  
  197. '*************************************************************************
  198. ''FUNCTION GetNumWinApps STATIC  AS INTEGER
  199. ''    GetNumWinApps = WGetNumWinApps
  200. ''END FUNCTION
  201.  
  202.  
  203. '*************************************************************************
  204. FUNCTION DoesFileExist (szFileName$, mode%) STATIC  AS INTEGER
  205.     DoesFileExist = FDoesFileExist(szFileName$, mode%)
  206. END FUNCTION
  207.  
  208.  
  209. '*************************************************************************
  210. FUNCTION GetDateOfFile (szFile$) STATIC  AS STRING
  211.     cb% = 20
  212.     szBuf$ = STRING$(cb%, 32)
  213.     cbRet% = CbGetDateOfFile(szFile$, szBuf$, cb%)
  214.     GetDateOfFile = szBuf$
  215.     szBuf$ = ""
  216. END FUNCTION
  217.  
  218.  
  219. '*************************************************************************
  220. FUNCTION GetYearFromDate (szDate$) STATIC  AS INTEGER
  221.     GetYearFromDate = VAL(MID$(szDate$, 1, 4))
  222. END FUNCTION
  223.  
  224.  
  225. '*************************************************************************
  226. FUNCTION GetMonthFromDate (szDate$) STATIC  AS INTEGER
  227.     GetMonthFromDate = VAL(MID$(szDate$, 6, 2))
  228. END FUNCTION
  229.  
  230.  
  231. '*************************************************************************
  232. FUNCTION GetDayFromDate (szDate$) STATIC  AS INTEGER
  233.     GetDayFromDate = VAL(MID$(szDate$, 9, 2))
  234. END FUNCTION
  235.  
  236.  
  237. '*************************************************************************
  238. FUNCTION GetHourFromDate (szDate$) STATIC  AS INTEGER
  239.     GetHourFromDate = VAL(MID$(szDate$, 12, 2))
  240. END FUNCTION
  241.  
  242.  
  243. '*************************************************************************
  244. FUNCTION GetMinuteFromDate (szDate$) STATIC  AS INTEGER
  245.     GetMinuteFromDate = VAL(MID$(szDate$, 15, 2))
  246. END FUNCTION
  247.  
  248.  
  249. '*************************************************************************
  250. FUNCTION GetSecondFromDate (szDate$) STATIC  AS INTEGER
  251.     GetSecondFromDate = VAL(MID$(szDate$, 18, 2))
  252. END FUNCTION
  253.  
  254.  
  255. '*************************************************************************
  256. FUNCTION GetVersionOfFile (szFile$) STATIC  AS STRING
  257.     cb% = 30
  258.     szBuf$ = STRING$(cb%, 32)
  259.     cbRet% = CbGetVersionOfFile(szFile$, szBuf$, cb%)
  260.     GetVersionOfFile = szBuf$
  261.     szBuf$ = ""
  262. END FUNCTION
  263.  
  264.  
  265. '*************************************************************************
  266. FUNCTION GetVersionNthField (szVersion$, nField%) STATIC  AS LONG
  267.     GetVersionNthField = LGetVersionNthField(szVersion$, nField%)
  268. END FUNCTION
  269.  
  270.  
  271. '*************************************************************************
  272. FUNCTION GetSizeOfFile (szFile$) STATIC  AS LONG
  273.     GetSizeOfFile = LcbGetSizeOfFile(szFile$)
  274. END FUNCTION
  275.  
  276.  
  277. '*************************************************************************
  278. FUNCTION FindTargetOnEnvVar (szFile$, szEnvVar$) STATIC  AS STRING
  279.     cb% = 512
  280.     szBuf$ = STRING$(cb%, 32)
  281.     cbRet% = CbFindTargetOnEnvVar(szFile$, szEnvVar$, szBuf$, cb%)
  282.     IF cbRet% >= cb% THEN
  283.         ERROR STFERR
  284.     END IF
  285.     szBuf$ = RTRIM$(szBuf$)
  286.     IF MID$(szBuf$, 1, 1) = "\" THEN
  287.        szBuf$ = MID$(CURDIR$, 1, 2) + szBuf$
  288.     ELSEIF Len(szBuf$) > 0 AND MID$(szBuf$, 2, 1) <> ":" THEN
  289.        szBuf$ = MID$(CURDIR$, 1, 3) + szBuf$
  290.     END IF
  291.     FindTargetOnEnvVar = szBuf$
  292.     szBuf$ = ""
  293. END FUNCTION
  294.  
  295.  
  296. '*************************************************************************
  297. FUNCTION FindFileInTree (szFile$, szDir$) STATIC  AS STRING
  298.     cb% = 512
  299.     szBuf$ = STRING$(cb%, 32)
  300.     cbRet% = CbFindFileInTree(szFile$, szDir$, szBuf$, cb%)
  301.     FindFileInTree = szBuf$
  302.     szBuf$ = ""
  303. END FUNCTION
  304.  
  305.  
  306. '*************************************************************************
  307. FUNCTION GetConfigSmartdrvSize STATIC  AS INTEGER
  308.     GetConfigSmartdrvSize = WGetConfigSmartdrvSize
  309. END FUNCTION
  310.  
  311.  
  312. '*************************************************************************
  313. FUNCTION GetConfigRamdriveSize STATIC  AS INTEGER
  314.     GetConfigRamdriveSize = WGetConfigRamdriveSize
  315. END FUNCTION
  316.  
  317.  
  318. '*************************************************************************
  319. FUNCTION GetConfigNumBuffers STATIC  AS INTEGER
  320.     GetConfigNumBuffers = WGetConfigNumBuffers
  321. END FUNCTION
  322.  
  323.  
  324. '*************************************************************************
  325. FUNCTION GetConfigNumFiles STATIC  AS INTEGER
  326.     GetConfigNumFiles = WGetConfigNumFiles
  327. END FUNCTION
  328.  
  329.  
  330. '*************************************************************************
  331. FUNCTION GetConfigLastDrive STATIC  AS STRING
  332.     chRet% = WGetConfigLastDrive
  333.     if chRet% = 0 then
  334.         GetConfigLastDrive = ""
  335.     else
  336.         GetConfigLastDrive = CHR$(chRet%)
  337.     end if
  338. END FUNCTION
  339.  
  340.  
  341. '*************************************************************************
  342. FUNCTION IsDriverInConfig (szDrv$) STATIC  AS INTEGER
  343.     IsDriverInConfig = FIsDriverInConfig(szDrv$)
  344. END FUNCTION
  345.  
  346.  
  347. '*************************************************************************
  348. FUNCTION GetProcessorType STATIC  AS INTEGER
  349.     GetProcessorType = 0
  350.     longTmp& = GetWinFlags()
  351.     IF longTmp& AND WF_CPU486 THEN
  352.         GetProcessorType = 4
  353.     ELSEIF longTmp& AND WF_CPU386 THEN
  354.         GetProcessorType = 3
  355.     ELSEIF longTmp& AND WF_CPU286 THEN
  356.         GetProcessorType = 2
  357.     ELSEIF longTmp& AND WF_CPU186 THEN
  358.         GetProcessorType = 1
  359.     END IF
  360. END FUNCTION
  361.  
  362.  
  363. '*************************************************************************
  364. SUB GetParallelPortsList (szSymbol$) STATIC
  365.     if FGetParallelPortsList(szSymbol$) = 0 then
  366.         ERROR STFERR
  367.     end if
  368. END SUB
  369.  
  370.  
  371. '*************************************************************************
  372. SUB GetSerialPortsList (szSymbol$) STATIC
  373.     if FGetSerialPortsList(szSymbol$) = 0 then
  374.         ERROR STFERR
  375.     end if
  376. END SUB
  377.  
  378.  
  379. '*************************************************************************
  380. FUNCTION Has87MathChip STATIC  AS INTEGER
  381.     Has87MathChip = FHas87MathChip
  382. END FUNCTION
  383.  
  384.  
  385. '*************************************************************************
  386. FUNCTION HasMonochromeDisplay STATIC  AS INTEGER
  387.     HasMonochromeDisplay = FHasMonochromeDisplay
  388. END FUNCTION
  389.  
  390.  
  391. '*************************************************************************
  392. FUNCTION HasMouseInstalled STATIC  AS INTEGER
  393.     HasMouseInstalled = FHasMouseInstalled
  394. END FUNCTION
  395.  
  396.  
  397. '*************************************************************************
  398. FUNCTION DoesDirExist (szDir$) STATIC  AS INTEGER
  399.     DoesDirExist = FDirExists(szDir$)
  400. END FUNCTION
  401.  
  402.  
  403. '*************************************************************************
  404. FUNCTION DoesIniSectionExist (szFile$, szSect$) STATIC  AS INTEGER
  405.     DoesIniSectionExist = FDoesIniSectionExist(szFile$, szSect$)
  406. END FUNCTION
  407.  
  408.  
  409. '*************************************************************************
  410. FUNCTION DoesIniKeyExist (szFile$, szSect$, szKey$) STATIC  AS INTEGER
  411.  
  412.     DoesIniKeyExist = FDoesIniKeyExist(szFile$, szSect$, szKey$)
  413. END FUNCTION
  414.  
  415.  
  416. '*************************************************************************
  417. FUNCTION GetIniKeyString (szFile$, szSect$, szKey$) STATIC  AS STRING
  418.     cb% = 512
  419.     szBuf$ = STRING$(cb%, 32)
  420.     cbRet% = CbGetIniKeyString(szFile$, szSect$, szKey$, szBuf$, cb%)
  421.     GetIniKeyString = szBuf$
  422.     szBuf$ = ""
  423. END FUNCTION
  424.  
  425.  
  426.  
  427.